home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-09-17 | 3.5 KB | 118 lines | [TEXT/MPS ] |
- //========================================================================================
- //
- // File: FWStrs.cpp
- // Release Version: $ ODF 2 $
- //
- // Copyright: (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
- //
- //========================================================================================
-
- #include "FWFound.hpp"
-
- #ifdef FW_BUILD_MAC
- #include <Types.h>
- #endif
-
- #ifndef FWEXCLIB_H
- #include "FWExcLib.h"
- #endif
-
- #ifndef FWSTRS_H
- #include "FWStrs.h"
- #endif
-
- #ifndef FWPRIDEB_H
- #include "FWPriDeb.h"
- #endif
-
- #ifndef FWSTREAM_H
- #include "FWStream.h"
- #endif
-
- #ifndef SOM_FW_OStringRunWriter_xh
- #include "SLStrRun.xh"
- #endif
-
- #ifndef FWEXCEPT_H
- #include "FWExcept.h"
- #endif
-
- #ifdef FW_BUILD_MAC
- #pragma segment Strings
- #endif
-
- //========================================================================================
- // CLASS FW_CStringReader
- //========================================================================================
-
- FW_DEFINE_AUTO(FW_CStringReader)
-
- //----------------------------------------------------------------------------------------
- // FW_CStringReader::FW_CStringReader
- //----------------------------------------------------------------------------------------
-
- FW_CStringReader::FW_CStringReader(const FW_CString& string) :
- FW_CTextReader(FW_CMemoryReader::MakeReader((char*)string.RevealBuffer(), string.GetByteLength(), string.RevealLocale()))
- {
- FW_END_CONSTRUCTOR
- }
-
- //----------------------------------------------------------------------------------------
- // FW_CStringReader::FW_CStringReader
- //----------------------------------------------------------------------------------------
-
- FW_CStringReader::FW_CStringReader( const FW_CString &string,
- FW_BytePosition start,
- FW_ByteCount length) :
- FW_CTextReader(FW_CMemoryReader::MakeReader((char*)string.RevealBuffer()+start, length, string.RevealLocale()))
- {
- FW_END_CONSTRUCTOR
- }
-
- //----------------------------------------------------------------------------------------
- // FW_CStringReader::FW_CStringReader
- //----------------------------------------------------------------------------------------
-
- FW_CStringReader::~FW_CStringReader()
- {
- FW_START_DESTRUCTOR
- }
-
- //========================================================================================
- // CLASS FW_CStringWriter
- //========================================================================================
-
- FW_DEFINE_AUTO(FW_CStringWriter)
-
- //----------------------------------------------------------------------------------------
- // FW_CStringWriter::MakeWriter
- //----------------------------------------------------------------------------------------
-
- inline FW_OStringRunWriter* FW_MakeOStringWriter(FW_HString stringRep, short bufferSize)
- {
- return (new FW_OStringRunWriter())->Initialize(FW_SOMEnvironment(), stringRep, bufferSize);
- }
-
- //----------------------------------------------------------------------------------------
- // FW_CStringWriter::FW_CStringWriter
- //----------------------------------------------------------------------------------------
-
- FW_CStringWriter::FW_CStringWriter(FW_HString* stringRep, short bufferSize) :
- FW_CTextWriter(FW_MakeOStringWriter(*stringRep, bufferSize)),
- fLock(*stringRep)
- {
- SetBufferSum(fLock.GetByteLength());
- FW_END_CONSTRUCTOR
- }
-
- //----------------------------------------------------------------------------------------
- // FW_CStringWriter::~FW_CStringWriter
- //----------------------------------------------------------------------------------------
-
- FW_CStringWriter::~FW_CStringWriter()
- {
- FW_START_DESTRUCTOR
- FlushBuffer();
- }
-
-